package com.example.mall.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.example.mall.domain.PayFlow;
import com.example.mall.dto.NotifyDto;
import com.example.mall.dto.PayFlowDto;
import com.example.mall.query.PageDTO;
import com.example.mall.query.PayFlowQuery;

import java.util.List;


/**
 * <p>
 * 支付流水表 服务类
 * </p>
 *
 * @author whale
 * @since 2025-06-03
 */
public interface IPayFlowService extends IService<PayFlow> {

    //分页查询支付流水表信息
    PageDTO<PayFlowDto> queryPage(PayFlowQuery payFlowQuery);

    //根据id查询支付流水表信息
    PayFlow queryPayFlowById(Long id);

    //查询全部支付流水表信息
    List<PayFlow> queryPayFlowList();

    //新增支付流水表
    void insert(PayFlowDto payFlowDto);

    //修改支付流水表信息
    void update(PayFlowDto payFlowDto);

    //删除支付流水表信息
    void delete(Long id);

    //批量删除支付流水表信息
    void deleteBatch(List<Long> ids);

    PayFlow create(NotifyDto dto);

    PayFlow selectByOutTradeNo(String outTradeNo);
}
